package com.rasenhund.android.gsimulator.common;

import java.util.ArrayList;

import com.rasenhund.android.gsimulator.schema.Arms;
import com.rasenhund.android.gsimulator.schema.MobileSuit;

public class Const {

    /**
     * パラメータ受け渡し用のキー
     */
    public class KEY {

        public static final String KEY_ARMY = "KEY_ARMY";
        public static final String KEY_MACHINE_NO = "KEY_MACHINE_NO";
        public static final String KEY_CATEGORY_CD = "KEY_CATEGORY_CD";
        public static final String KEY_MS = "KEY_MS";

    }

    /**
     * 軍コード
     */
    public class ARMY {

        public static final int EFSF = 0; // 地球連邦軍
        public static final int POZ = 1; // ジオン公国軍

    }

    /**
     * カテゴリコード
     */
    public class CATEGORY {

        public static final int GRAPP = 0; // 格
        public static final int SHORT = 1; // 近
        public static final int SHOOT = 2; // 射
        public static final int TANK = 3; // 遠
        public static final int SNIPE = 4; // 狙

        public static final int BASE = 10; // 拠点

    }

    /**
     * MSリストの取得
     * 
     * @param armyCd
     * @param categoryCd
     * @return
     */
    public static ArrayList<MobileSuit> getMsList(int armyCd, int categoryCd) {

        ArrayList<MobileSuit> list = null;

        switch (armyCd) {
            case ARMY.EFSF:
                list = getEfsfMsList(categoryCd);
                break;
            case ARMY.POZ:
                list = getPozMsList(categoryCd);
                break;
        }

        return list;

    }

    /**
     * 地球連邦軍のMSリスト取得
     * 
     * @param categoryCd
     * @return
     */
    public static ArrayList<MobileSuit> getEfsfMsList(int categoryCd) {

        ArrayList<MobileSuit> list = null;

        switch (categoryCd) {

            case CATEGORY.GRAPP:
                list = getEfsfMsList_Grapp();
                break;

            case CATEGORY.SHORT:
                list = getEfsfMsList_Short();
                break;

            case CATEGORY.SHOOT:
                list = getEfsfMsList_Shoot();
                break;

            case CATEGORY.TANK:
                list = getEfsfMsList_Tank();
                break;

            case CATEGORY.SNIPE:
                list = getEfsfMsList_Snipe();
                break;

        }

        return list;

    }

    /**
     * 地球連邦軍 格闘型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getEfsfMsList_Grapp() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79(G)");
        mobileSuit.setMsName("陸戦型ジム");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RB-79K");
        mobileSuit.setMsName("ボールＫ型");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ワイヤーランチャー", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79");
        mobileSuit.setMsName("ジム（指揮官機）");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ビーム・サーベルC", 40));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79L");
        mobileSuit.setMsName("ジム・ライトアーマー");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ビーム・ライフル", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-79(G)Ez-8");
        mobileSuit.setMsName("ガンダムＥｚ８");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79FP");
        mobileSuit.setMsName("ジム・ストライカー／ジム・ストライカー改");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ツイン・ビーム・スピアB", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79FP");
        mobileSuit.setMsName("ジム・ストライカー（ネメシス隊）／ジム・ストライカー改（ネメシス隊）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ツイン・ビーム・スピアB", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78XX");
        mobileSuit.setMsName("ピクシー");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("90mmサブ・マシンガン", 10));
        mobileSuit.addArms(new Arms("ビーム・ダガーB", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RAG-79-G1");
        mobileSuit.setMsName("水中型ガンダム");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("炸裂式ハープーン・ガン", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-79BD-2");
        mobileSuit.setMsName("Ｂ.Ｄ.２号機");
        mobileSuit.setCost(260);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ビーム・ライフル", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78-1");
        mobileSuit.setMsName("プロトタイプガンダム");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ハイパー・ハンマー", 20));
        mobileSuit.addArms(new Arms("ビーム・ライフル", 40));
        mobileSuit.addArms(new Arms("ハイパー・ハンマー/BR", 60));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78NT-1");
        mobileSuit.setMsName("アレックス");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("腕部ガトリング・ガンB", 10));
        mobileSuit.addArms(new Arms("ビーム・ライフル", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79FC");
        mobileSuit.setMsName("ストライカー・カスタム");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("バースト・ナックル", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78-2");
        mobileSuit.setMsName("ガンダム");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("最終決戦仕様", 10));
        mobileSuit.addArms(new Arms("ビーム・ライフルB", 20));
        list.add(mobileSuit);

        return list;

    }

    /**
     * 地球連邦軍 近距離型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getEfsfMsList_Short() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("TGM-79");
        mobileSuit.setMsName("ジム・トレーナー");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79");
        mobileSuit.setMsName("ジム");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79");
        mobileSuit.setMsName("ジム（バズーカラック仕様）");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06F-2");
        mobileSuit.setMsName("ザクⅡ（Ｆ２）（連邦軍仕様）");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79");
        mobileSuit.setMsName("ジム（WD隊）");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        mobileSuit.addArms(new Arms("ハイパーバズーカ", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79GL");
        mobileSuit.setMsName("ジム・コマンドライトアーマー");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        mobileSuit.addArms(new Arms("ビーム・ガンB", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RAG-79");
        mobileSuit.setMsName("アクア・ジム");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        mobileSuit.addArms(new Arms("ミサイル・ランチャーB", 10));
        mobileSuit.addArms(new Arms("背部ミサイルランチャー", 20));
        mobileSuit.addArms(new Arms("MR/背部MR", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-79(G)");
        mobileSuit.setMsName("陸戦型ガンダム");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79D");
        mobileSuit.setMsName("ジム・寒冷地仕様");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79G/RGM-79GS");
        mobileSuit.setMsName("ジム・コマンド／ジム・コマンド（宇宙戦仕様）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79C");
        mobileSuit.setMsName("ジム改");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        mobileSuit.addArms(new Arms("ビーム・ガン", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79HC");
        mobileSuit.setMsName("ジム・ガードカスタム");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-79BD-1");
        mobileSuit.setMsName("Ｂ.Ｄ.１号機");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79");
        mobileSuit.setMsName("パワード・ジム");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79N");
        mobileSuit.setMsName("ジム・カスタム");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78GP01");
        mobileSuit.setMsName("ガンダムＧＰ０１");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78GP01-Fb");
        mobileSuit.setMsName("ガンダムＧＰ０１フルバーニアン");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        return list;

    }

    /**
     * 地球連邦軍 射撃型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getEfsfMsList_Shoot() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79F");
        mobileSuit.setMsName("デザート・ジム");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・スプレーガン", 10));
        mobileSuit.addArms(new Arms("レール・キャノン", 40));
        mobileSuit.addArms(new Arms("RC/BS", 50));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-77-2");
        mobileSuit.setMsName("ガンキャノン");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・ライフル", 20));
        // mobileSuit.addArms(new Arms("硬芯徹甲弾(追加弾)", 20));
        mobileSuit.addArms(new Arms("BR/硬芯徹甲弾", 40));
        mobileSuit.addArms(new Arms("拠点弾(追加弾)", 80));
        mobileSuit.addArms(new Arms("BR/拠点弾", 100));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-79(G)");
        mobileSuit.setMsName("陸戦型ガンダム（ジム頭）");
        mobileSuit.setCost(220);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ロケット・ランチャーB", 20));
        mobileSuit.addArms(new Arms("180mm大型砲", 60));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79SP");
        mobileSuit.setMsName("ジム・スナイパーⅡ（ＷＤ隊）");
        mobileSuit.setCost(220);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・ライフル", 10));
        // mobileSuit.addArms(new Arms("ハイパー・バズーカ", 10));
        mobileSuit.addArms(new Arms("BR/HB", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78-6");
        mobileSuit.setMsName("ガンダム６号機");
        mobileSuit.setCost(220);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・ライフルB", 10));
        // mobileSuit.addArms(new Arms("グレネイド・ランチャーB", 10));
        // mobileSuit.addArms(new Arms("300mm低反動キャノン砲", 10));
        mobileSuit.addArms(new Arms("BR/GR", 20));
        // mobileSuit.addArms(new Arms("BR/キャノン砲", 20));
        // mobileSuit.addArms(new Arms("GR/キャノン砲", 20));
        mobileSuit.addArms(new Arms("BR/GR/キャノン砲", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("FA-78-2");
        mobileSuit.setMsName("ヘビーガンダム");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ミサイル(焼夷弾)", 10));
        mobileSuit.addArms(new Arms("ビーム・キャノンC", 40));
        mobileSuit.addArms(new Arms("BC/ミサイル", 50));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-79BD-3");
        mobileSuit.setMsName("Ｂ.Ｄ.３号機");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・ライフル", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78-3");
        mobileSuit.setMsName("ガンダム（Ｇ－３）");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ハイパー・バズーカ", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("FA-78-1");
        mobileSuit.setMsName("フルアーマーガンダム");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("可動式ロケット砲", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGC-83");
        mobileSuit.setMsName("ジム・キャノンⅡ");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78GP02A");
        mobileSuit.setMsName("ガンダムＧＰ０２Ａ（ＭＬＲＳ仕様）");
        mobileSuit.setCost(320);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("MLRS(B)", 30));
        list.add(mobileSuit);

        return list;

    }

    /**
     * 地球連邦軍 遠距離砲撃型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getEfsfMsList_Tank() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RB-79");
        mobileSuit.setMsName("ボール");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("ワイヤーランチャーB", 10));
        // mobileSuit.addArms(new Arms("対MS弾B", 10));
        mobileSuit.addArms(new Arms("ワイヤーランチャーC", 20));
        // mobileSuit.addArms(new Arms("WRB/対MS弾", 20));
        mobileSuit.addArms(new Arms("WRC/対MS弾", 30));
        // mobileSuit.addArms(new Arms("120mm低反動キャノン砲A", 30));
        mobileSuit.addArms(new Arms("キャノン砲A/対MS弾", 40));
        // mobileSuit.addArms(new Arms("キャノン砲A/WRB", 40));
        mobileSuit.addArms(new Arms("キャノン砲A/WRC", 50));
        // mobileSuit.addArms(new Arms("キャノン砲A/WRB/対MS弾", 50));
        mobileSuit.addArms(new Arms("キャノン砲A/WRC/対MS弾", 60));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-75");
        mobileSuit.setMsName("量産型ガンタンク");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGC-80");
        mobileSuit.setMsName("ジム・キャノン");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("4連装ボップ・ミサイルB", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGC-80");
        mobileSuit.setMsName("ジム・キャノン（ＷＤ隊）");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("ビーム・スプレーガン", 10));
        mobileSuit.addArms(new Arms("ハンド・グレネイド", 20));
        mobileSuit.addArms(new Arms("100mmマシンガン", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RTX-440");
        mobileSuit.setMsName("陸戦強襲型ガンタンク");
        mobileSuit.setCost(180);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("56連装ロケット・ランチャー", 10));
        // mobileSuit.addArms(new Arms("火炎放射器", 10));
        mobileSuit.addArms(new Arms("重地雷", 20));
        // mobileSuit.addArms(new Arms("MLRS", 20));
        mobileSuit.addArms(new Arms("56連装LR/MLRS", 30));
        // mobileSuit.addArms(new Arms("重地雷/火炎放射器", 30));
        // mobileSuit.addArms(new Arms("重地雷/MLRS", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-75");
        mobileSuit.setMsName("ガンタンク");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("焼夷榴弾(追加弾)", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-77D");
        mobileSuit.setMsName("量産型ガンキャノン");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("240mmキャノン砲B", 10));
        // mobileSuit.addArms(new Arms("追加弾(硬芯徹甲弾)", 10));
        // mobileSuit.addArms(new Arms("追加弾(対MS弾)", 10));
        mobileSuit.addArms(new Arms("ブルパップ・マシンガン", 20));
        // mobileSuit.addArms(new Arms("キャノン砲B/硬芯徹甲弾", 20));
        mobileSuit.addArms(new Arms("キャノン砲B/P・マシンガン", 30));
        // mobileSuit.addArms(new Arms("キャノン砲B/硬芯徹甲弾/対MS弾", 30));
        mobileSuit.addArms(new Arms("キャノン砲B/P・マシンガン/対MS弾", 40));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("FA-78-1B");
        mobileSuit.setMsName("フルアーマーガンダム（ＴＹＰＥ－Ｂ）");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        list.add(mobileSuit);

        return list;

    }

    /**
     * 地球連邦軍 狙撃型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getEfsfMsList_Snipe() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79SC");
        mobileSuit.setMsName("ジム・スナイパーカスタム");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SNIPE);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RGM-79SP");
        mobileSuit.setMsName("ジム・スナイパーⅡ");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SNIPE);
        mobileSuit.addArms(new Arms("ハンド・グレネイドB", 20));
        list.add(mobileSuit);

        return list;

    }

    /**
     * ジオン公国軍のMSリスト取得
     * 
     * @param categoryCd
     * @return
     */
    private static ArrayList<MobileSuit> getPozMsList(int categoryCd) {

        ArrayList<MobileSuit> list = null;

        switch (categoryCd) {

            case CATEGORY.GRAPP:
                list = getPozMsList_Grapp();
                break;

            case CATEGORY.SHORT:
                list = getPozMsList_Short();
                break;

            case CATEGORY.SHOOT:
                list = getPozMsList_Shoot();
                break;

            case CATEGORY.TANK:
                list = getPozMsList_Tank();
                break;

            case CATEGORY.SNIPE:
                list = getPozMsList_Snipe();
                break;

        }

        return list;

    }

    /**
     * ジオン公国軍 格闘型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getPozMsList_Grapp() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-05B");
        mobileSuit.setMsName("ザクⅠ");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06S");
        mobileSuit.setMsName("ザクⅡ（Ｓ）");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        // コストアップ武装
        mobileSuit.addArms(new Arms("ザク・バズーカ", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-07B");
        mobileSuit.setMsName("グフ");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ジャイアント・バズ", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-03");
        mobileSuit.setMsName("ゴッグ");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("腹部メガ粒子砲B", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-08");
        mobileSuit.setMsName("ゾゴック");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("アーム・パンチB", 10));
        mobileSuit.addArms(new Arms("アーム・パンチC", 20));
        mobileSuit.addArms(new Arms("アーム・パンチB/C", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06R-1A");
        mobileSuit.setMsName("高機動型ザク（Ｒ－１Ａ）（３Ｓ）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ザク・バズーカ", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-07E");
        mobileSuit.setMsName("ズゴックＥ");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ビーム・カノン砲C", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-07S");
        mobileSuit.setMsName("ズゴック（Ｓ）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-09F/TROP");
        mobileSuit.setMsName("ドム・トローペン");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("YMS-15");
        mobileSuit.setMsName("ギャン");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-18E");
        mobileSuit.setMsName("ケンプファー");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ジャイアント・バズ後期型", 20));
        // mobileSuit.addArms(new Arms("ショットガンB", 20));
        // mobileSuit.addArms(new Arms("チェーン・マイン", 20));
        // mobileSuit.addArms(new Arms("ショットガンB/チェーン・マイン", 40));
        mobileSuit.addArms(new Arms("Gバズ/チェーン・マイン", 40));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-08TX[EXAM]");
        mobileSuit.setMsName("イフリート改");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ヒート・サーベルB", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-79BD-2");
        mobileSuit.setMsName("Ｂ．Ｄ．２号機（ＮＳ）");
        mobileSuit.setCost(260);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        mobileSuit.addArms(new Arms("ビーム・ライフル", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06R-2");
        mobileSuit.setMsName("高機動型ザク（Ｒ－２）（ジョニー・ライデンカラー）");
        mobileSuit.setCost(260);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-14S");
        mobileSuit.setMsName("ゲルググ（Ｓ）");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-08TX/N");
        mobileSuit.setMsName("イフリート・ナハト");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.GRAPP);
        list.add(mobileSuit);

        return list;

    }

    /**
     * ジオン公国軍 近距離型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getPozMsList_Short() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06T");
        mobileSuit.setMsName("ザク・トレーナータイプ");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MP-02A");
        mobileSuit.setMsName("オッゴ");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        mobileSuit.addArms(new Arms("6連装ロケット・ポッドA", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-21C");
        mobileSuit.setMsName("ドラッツェ");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06F");
        mobileSuit.setMsName("ザクⅡ");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        mobileSuit.addArms(new Arms("3連装ミサイル・ポッド", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06F");
        mobileSuit.setMsName("ザクⅡ（指揮官機）");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-04");
        mobileSuit.setMsName("アッガイ");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06D");
        mobileSuit.setMsName("ザク・デザートタイプ");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06F-2");
        mobileSuit.setMsName("ザクⅡ（Ｆ２）");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-07");
        mobileSuit.setMsName("ズゴック");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("EMS-10");
        mobileSuit.setMsName("ヅダ");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06J");
        mobileSuit.setMsName("ザクⅡ寒冷地仕様");
        mobileSuit.setCost(180);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06R-1A");
        mobileSuit.setMsName("高機動型ザク（Ｒ－１Ａ）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06FZ");
        mobileSuit.setMsName("ザクⅡ改");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-07B-3");
        mobileSuit.setMsName("グフ・カスタム");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        mobileSuit.addArms(new Arms("ガトリングシールド", 10));
        // mobileSuit.addArms(new Arms("ヒートロッドB", 10));
        mobileSuit.addArms(new Arms("ガトリングシールド／ヒートロッドB", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-09F/TROP");
        mobileSuit.setMsName("ドム・トローペン（サンドブラウン）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-03C");
        mobileSuit.setMsName("ハイゴッグ");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-08TX");
        mobileSuit.setMsName("イフリート");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-14F");
        mobileSuit.setMsName("ゲルググＭ");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-11");
        mobileSuit.setMsName("アクト・ザク");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-14B");
        mobileSuit.setMsName("高機動型ゲルググ");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("AGX-04");
        mobileSuit.setMsName("ガーベラ・テトラ");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHORT);
        list.add(mobileSuit);

        return list;

    }

    /**
     * ジオン公国軍 射撃型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getPozMsList_Shoot() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06FS");
        mobileSuit.setMsName("ザクⅡ（ＦＳ）");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ザク・バズーカB", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-04G");
        mobileSuit.setMsName("ジュアッグ");
        mobileSuit.setCost(180);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("3連装ロケット・ランチャーB", 10));
        mobileSuit.addArms(new Arms("3連装ロケット・ランチャーC", 20));
        mobileSuit.addArms(new Arms("ロケット・ランチャーB/C", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-05S");
        mobileSuit.setMsName("ザクⅠ（Ｓ）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-09/MS-09R");
        mobileSuit.setMsName("ドム／リック・ドム");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ジャイアント・バズB", 10));
        mobileSuit.addArms(new Arms("ジャイアント・バズC", 80));
        mobileSuit.addArms(new Arms("ジャイアント・バズB/C", 90));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-09K-2");
        mobileSuit.setMsName("ドム・キャノン複砲仕様");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("硬芯徹甲弾(追加弾)", 20));
        mobileSuit.addArms(new Arms("拠点弾(追加弾)", 80));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-14G");
        mobileSuit.setMsName("ゲルググ（Ｇ）");
        mobileSuit.setCost(220);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・ライフルB", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-14A");
        mobileSuit.setMsName("ゲルググ");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・ライフルB", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MSM-10");
        mobileSuit.setMsName("ゾック");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("肩部メガ粒子砲C", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-14C");
        mobileSuit.setMsName("ゲルググキャノン");
        mobileSuit.setCost(280);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("RX-78GP02A");
        mobileSuit.setMsName("ガンダムＧＰ０２Ａ（ビームバズ仕様）");
        mobileSuit.setCost(320);
        mobileSuit.setCategoryCd(CATEGORY.SHOOT);
        mobileSuit.addArms(new Arms("ビーム・バズーカB", 30));
        // mobileSuit.addArms(new Arms("ビーム・サーベルB", 30));
        mobileSuit.addArms(new Arms("バズーカB/サーベルB", 60));
        list.add(mobileSuit);

        return list;

    }

    /**
     * ジオン公国軍 遠距離砲撃型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getPozMsList_Tank() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-05B");
        mobileSuit.setMsName("ザクⅠ後期型");
        mobileSuit.setCost(120);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("対MS弾(追加弾)", 10));
        // mobileSuit.addArms(new Arms("クラッカーA", 10));
        mobileSuit.addArms(new Arms("クラッカーA/MS弾", 20));
        mobileSuit.addArms(new Arms("マゼラ・トップ砲A", 30));
        // mobileSuit.addArms(new Arms("クラッカーB", 30));
        // mobileSuit.addArms(new Arms("MT砲A、クラA", 40));
        // mobileSuit.addArms(new Arms("クラB、MS弾", 40));
        mobileSuit.addArms(new Arms("MT砲A、MS弾", 40));
        mobileSuit.addArms(new Arms("MT砲A/クラA/MS弾", 50));
        mobileSuit.addArms(new Arms("MT砲A/クラB", 60));
        mobileSuit.addArms(new Arms("MT砲A/クラB/MS弾", 70));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06K");
        mobileSuit.setMsName("ザクキャノン");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("ビッグガン", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06V");
        mobileSuit.setMsName("ザクタンク");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("焼夷榴弾(追加弾)", 10));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-12");
        mobileSuit.setMsName("ギガン");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("焼夷榴弾(追加弾)", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("YMT-05");
        mobileSuit.setMsName("ヒルドルブ");
        mobileSuit.setCost(160);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("APDS弾", 10));
        mobileSuit.addArms(new Arms("APFSDS弾", 20));
        mobileSuit.addArms(new Arms("APDS弾/APFSDS弾", 30));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-06V-6");
        mobileSuit.setMsName("ザクタンク（Ｖ－６）");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        mobileSuit.addArms(new Arms("ミサイル弾(追加弾)", 20));
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("YMS-16M");
        mobileSuit.setMsName("ザメル");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.TANK);
        list.add(mobileSuit);

        return list;

    }

    /**
     * ジオン公国軍 狙撃型機体リスト取得
     * 
     * @return
     */
    private static ArrayList<MobileSuit> getPozMsList_Snipe() {

        ArrayList<MobileSuit> list = new ArrayList<MobileSuit>();
        MobileSuit mobileSuit = null;

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-05L");
        mobileSuit.setMsName("ザクⅠ・スナイパータイプ");
        mobileSuit.setCost(200);
        mobileSuit.setCategoryCd(CATEGORY.SNIPE);
        list.add(mobileSuit);

        mobileSuit = new MobileSuit();
        mobileSuit.setModelNo("MS-14JG");
        mobileSuit.setMsName("ゲルググＪ");
        mobileSuit.setCost(240);
        mobileSuit.setCategoryCd(CATEGORY.SNIPE);
        mobileSuit.addArms(new Arms("ビーム・スポットガンB", 20));
        list.add(mobileSuit);

        return list;

    }

}
